package com.melody.android.logic.util

import com.melody.android.MelodyApplication
import com.melody.android.logic.LyricsManager

/**
 * Lyrics工具类
 */
object Lyrics {

    // 获取单例实例(Lyrics工具类内部处理, 简化外部调用逻辑)
    private val lyricsManager = LyricsManager.getInstance()

    /**
     * 加载歌词
     * @param songName 歌曲名称
     * @return 歌曲歌词
     */
    fun loadLyrics(songName: String): String {
        return lyricsManager.loadLyricsFromFile(MelodyApplication.context, "$songName.lrc")
    }

    /**
     * 解析并显示歌词
     * @param listener LyricsDisplayListener实例对象
     * @param lyricsText 歌词文本
     */
    fun parseAndDisplayLyrics(listener: LyricsManager.LyricsDisplayListener, lyricsText: String) {
        lyricsManager.setLyricsDisplayListener(listener)
        lyricsManager.parseLyrics(lyricsText)
    }

    /**
     * 开始更新歌词显示
     */
    fun startUpdatingLyrics() {
        lyricsManager.startUpdatingLyrics()
    }

    /**
     * 停止更新歌词显示
     */
    fun stopUpdatingLyrics() {
        lyricsManager.stopUpdatingLyrics()
    }

}